/*
 *  ellipsincludes.h
 *  AutoEllips
 *
 *  Created by Simon Martin on 09/11/2009.
 *  Copyright 2009 __MyCompanyName__. All rights reserved.
 *
 */
#ifndef _ELLIPSINCLUDES_

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <math.h>
#include <complex.h>
#include <curses.h>
#include <menu.h>
#include <string.h>
#include <time.h>
#include "ri_limits.h"
#include "labjackusb.h"
#include "u3.h"

#define STRUCT_ENTRIES 6 // number of values in ellipsometer structure.

typedef struct ellipspar_struct
{ 
	int nvalues;
	char *ellipspar_names[STRUCT_ENTRIES];
	//double* ellipspar_values[STRUCT_ENTRIES];
	double ellipspar_values[STRUCT_ENTRIES];
	// store some values associated with ellipsometer and calculations
	// some values are complex, but store as separate double values
	// a cludge but without dynamic typing, things are tricky
    //double angle;
    // double substrate_ri_real; // substrate refractive index default to silicon value real part
	//double substrate_ri_imag; // substrate refractive index default to silicon value real part
	// double capping_ri_real;      // capping medium refractive index default to air value: real part
	//double capping_ri_imag;      // capping medium refractive index default to air value: imag part
   // double wavelength;           // laser wavelength in Angstromms
} ellipspar_t;

#define _ELLIPSINCLUDES_
#endif
